package com.huellas.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Collection;

import com.huellas.bean.PacienteBean;
import com.huellas.excepcion.DAOExcepcion;
import com.huellas.util.ConexionBD;

public class BuscaParejaDAO extends BaseDAO{
 
public Collection<PacienteBean> buscaParejas()
throws DAOExcepcion {
//String query = "select CoPaciente,NoPaciente,Peso,FeNacimiento,Genero,Tamano_CoTamano,TipoSangre_CoTipoSangre,actividad_CoActividad,raza_CoRaza from paciente where FlgBuscaParejas=0";
String query = "select a.CoPaciente,a.NoPaciente,a.Peso,a.FeNacimiento,a.Genero,b.NoTamano,c.NoTipoSangre,d.NoActividad,e.NoRaza from paciente a join tamano b on a.Tamano_CoTamano = b.cotamano join tiposangre c on a.TipoSangre_CoTipoSangre = c.coTipoSangre join actividad d on a.actividad_CoActividad = d.CoActividad join raza e on a.raza_CoRaza = e.CoRaza where a.FlgBuscaParejas=0";
Collection<PacienteBean> lista = new ArrayList<PacienteBean>();
Connection con = null;
PreparedStatement stmt = null;
ResultSet rs = null;
try {
con = ConexionBD.obtenerConexion();
stmt = con.prepareStatement(query);
rs = stmt.executeQuery();
while (rs.next()) {
PacienteBean vo = new PacienteBean();
vo.setCoPaciente(rs.getInt("CoPaciente"));
vo.setNoPaciente(rs.getString("NoPaciente"));
vo.setPeso(rs.getDouble("Peso"));
vo.setFeNacimiento(rs.getString("FeNacimiento"));
vo.setGenero(rs.getString("Genero"));
vo.setTamano(rs.getString("NoTamano"));
vo.setTipo(rs.getString("NoTipoSangre"));
vo.setActividad(rs.getString("NoActividad"));
vo.setRaza(rs.getString("NoRaza"));
lista.add(vo);
}
} catch (SQLException e) {
System.err.println(e.getMessage());
throw new DAOExcepcion(e.getMessage());
} finally {
this.cerrarResultSet(rs);
this.cerrarStatement(stmt);
this.cerrarConexion(con);
}
System.out.println(lista.size());
return lista;
}

}